IF EXISTS
(
    SELECT *
    FROM dbo.sysobjects
    WHERE id = OBJECT_ID(N'[dbo].[EPMMedicationInfoSearch]')
          AND OBJECTPROPERTY(id, N'IsProcedure') = 1
)
    DROP PROCEDURE [dbo].[EPMMedicationInfoSearch];

IF EXISTS
(
    SELECT 1
    FROM dbo.sysobjects
    WHERE id = OBJECT_ID(N'[dbo].[EPOCheckValidateOrderId]')
          AND OBJECTPROPERTY(id, N'IsProcedure') = 1
)
    DROP PROCEDURE [dbo].[EPOCheckValidateOrderId];

IF EXISTS
(
    SELECT *
    FROM dbo.sysobjects
    WHERE id = OBJECT_ID(N'[dbo].[vw_EpoTracking]')
          AND xtype = 'V'
)
    DROP VIEW [dbo].[vw_EpoTracking];


IF NOT EXISTS
(
    SELECT COLUMN_NAME
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = 'TmpDrugH'
          AND COLUMN_NAME = 'IsPaid'
)
    ALTER TABLE dbo.TmpDrugH ADD IsPaid BIT NULL DEFAULT (0);

IF EXISTS (SELECT name FROM sysobjects WHERE name = 'EPOTracking')
BEGIN
    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'IsDelivered'
    )
        ALTER TABLE dbo.EPOTracking ADD IsDelivered BIT NULL DEFAULT (0);


    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'DeliveryLink'
    )
        ALTER TABLE dbo.EPOTracking ADD DeliveryLink NVARCHAR(MAX) NULL;


    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'DeliveryAmountPrice'
    )
        ALTER TABLE dbo.EPOTracking
        ADD DeliveryAmountPrice MONEY NULL
                DEFAULT (0);

    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'PaymentReferenceCode'
    )
        ALTER TABLE dbo.EPOTracking ADD PaymentReferenceCode VARCHAR(50) NULL;



    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'PaymentTransactionCode'
    )
        ALTER TABLE dbo.EPOTracking
        ADD PaymentTransactionCode SMALLINT NULL
                DEFAULT (0);


    IF NOT EXISTS
    (
        SELECT COLUMN_NAME
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_NAME = 'EPOTracking'
              AND COLUMN_NAME = 'PaymentAmount'
    )
        ALTER TABLE dbo.EPOTracking ADD PaymentAmount MONEY NULL DEFAULT (0);
END;

